home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple WWDC 1996
/
WWDC96_1996 (CD).toast
/
Technology Materials
/
MacOS 8 Resources
/
Developer Tools
/
Mac OS 8 Interfaces & Libraries
/
Interfaces
/
CIncludes
/
SegLoad.h
< prev
next >
Wrap
C/C++ Source or Header
|
1996-05-01
|
2KB
|
112 lines
/*
File: SegLoad.h
Contains: Segment Loader Interfaces.
Version: Technology: System 7.5
Release: Universal Interfaces 3.0d3 on Copland DR1
Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
Bugs?: If you find a problem with this file, send the file and version
information (from above) and the problem description to:
Internet: apple.bugs@applelink.apple.com
AppleLink: APPLE.BUGS
*/
#ifndef __SEGLOAD__
#define __SEGLOAD__
#ifndef __TYPES__
#include <Types.h>
#endif
#ifdef __cplusplus
extern "C" {
#endif
#if PRAGMA_IMPORT_SUPPORTED
#pragma import on
#endif
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=mac68k
#endif
#if FOR_SYSTEM7_ONLY
#if !GENERATINGCFM
/*
CountAppFiles, GetAppFiles, ClrAppFiles, GetAppParms, getappparms,
and the AppFile data structure and enums are obsolete.
They are still supported for writing old style 68K apps,
but they are not supported for CFM-based apps.
Use AppleEvents to determine which files are to be
opened or printed from the Finder.
*/
enum {
appOpen = 0, /*Open the Document (s)*/
appPrint = 1 /*Print the Document (s)*/
};
struct AppFile {
short vRefNum;
OSType fType;
short versNum; /*versNum in high byte*/
Str255 fName;
};
typedef struct AppFile AppFile;
extern pascal void CountAppFiles(short *message, short *count);
extern pascal void GetAppFiles(short index, AppFile *theFile);
extern pascal void ClrAppFiles(short index);
extern pascal void GetAppParms(Str255 apName, short *apRefNum, Handle *apParam)
ONEWORDINLINE(0xA9F5);
#if CGLUESUPPORTED
extern void getappparms(char *apName, short *apRefNum, Handle *apParam);
#endif
#endif
/*
Because PowerPC applications don't have segments,
UnloadSeg is unsupported for PowerPC.
*/
#if GENERATING68K
extern pascal void UnloadSeg(void *routineAddr)
ONEWORDINLINE(0xA9F1);
#else
#define UnloadSeg(x)
#endif
#endif
#if OLDROUTINELOCATIONS
extern pascal void ExitToShell(void )
ONEWORDINLINE(0xA9F4);
#endif
#if PRAGMA_ALIGN_SUPPORTED
#pragma options align=reset
#endif
#if PRAGMA_IMPORT_SUPPORTED
#pragma import off
#endif
#ifdef __cplusplus
}
#endif
#endif /* __SEGLOAD__ */